package com.turing.post.salesmanage.util;

import java.math.BigInteger;
import java.util.List;

import javax.ejb.Local;
import javax.ejb.Remote;

import com.turing.post.util.PCPSApplicationException;
import com.turing.post.util.PCPSWebInput;

/**
 * 销售员业务接口
 * 
 * @author zxp
 * @Dec 20, 2012
 */
@Remote
@Local
public interface SalesDao {
	/**
	 * 根据销售员主键编号查询销售员
	 * 
	 * @param salesId
	 *            销售员编号
	 * @return 销售员
	 */
	public Sales getSalesBySalesNo(BigInteger salesId);

	/**
	 * 根据销售员名称查询
	 * 
	 * @param SalesName
	 *            销售员名称
	 * @return 销售员
	 */
	public Sales getSalesBySalesName(String salesName);

	/**
	 * 查询销售员总记录数
	 * 
	 * @param branchNo用户所属机构
	 * @param SalesName
	 *            销售员名称
	 * @return 记录数
	 */
	public BigInteger getSalesTotal(PCPSWebInput webInput, String branchNo,
			String salesName);

	/**
	 * 分页查询销售员列表
	 * 
	 * @param branchNo
	 *            用户所属机构
	 * @param SalesName
	 *            销售员名称
	 * @param page
	 *            页码
	 * @return 销售员列表
	 */
	public List<Sales> getSalesList(PCPSWebInput webInput, Integer page,
			String branchNo, String salesName);
	/**
	 * 根据销售机构查询销售员下拉列表
	 * @param saleBranchNo
	 * @return
	 */
	public List<Sales> getSalesListBySaleBranchNo(String saleBranchNo);

	/**
	 * 新增
	 * 
	 * @param Sales
	 * @throws PCPSApplicationException
	 */
	public void insertSales(Sales sales) throws PCPSApplicationException;

	/**
	 * 修改
	 * 
	 * @param Sales
	 * @throws PCPSApplicationException
	 */
	public void updateSales(Sales sales) throws PCPSApplicationException;
}
